package net.spatula.tally_ho.ui.article.update;

/* Copyright 2006 Nicklas R Johnson
 * Licensed under the Apache License, Version 2.0 (the "License"); 
 * you may not use this file except in compliance with the License. 
 * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 
 * 
 * Unless required by applicable law or agreed to in writing, software 
 * distributed under the License is distributed on an "AS IS" BASIS, 
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
 * See the License for the specific language governing permissions and 
 * limitations under the License.
 */

import net.spatula.tally_ho.ui.AuthenticatedWebPage;
import net.spatula.tally_ho.ui.article.common.ArticleSession;
import net.spatula.tally_ho.ui.signin.InstantiationAuthorizationStrategy;
import wicket.ISessionFactory;
import wicket.Session;
import wicket.protocol.http.WebApplication;
import wicket.settings.IRequestCycleSettings;

public class ArticleUpdateApp extends WebApplication {

    public Class getHomePage() {
        return ArticleUpdate.class;
    }

    public void init() {
        getMarkupSettings().setStripWicketTags(true);
        getRequestCycleSettings().setRenderStrategy(IRequestCycleSettings.ONE_PASS_RENDER); // needed for Sitemesh
        // to work properly
        getSecuritySettings().setAuthorizationStrategy(new InstantiationAuthorizationStrategy(AuthenticatedWebPage.class));
    }

    public ISessionFactory getSessionFactory() {
        return new ISessionFactory() {

            public Session newSession() {
                return new ArticleSession(ArticleUpdateApp.this);
            }
        };
    }

}